Azure Machine Learning の Data Labeling を使って猫の画像のラベル付けを行ってみる #Azure #AzureMachineLearning
こんにちは、Mr.Moです。
7/8のアップデートでAzure Machine LearningのData Labeling機能のプレビュー表示が無くなっていましたね。(一般提供開始(GA)の状態)さっそく本エントリではData Labeling機能の使い方を確認していこうと思います。
Azure Machine Learning の Data Labeling 機能とは
ラベル付きデータは、教師あり学習モデルのトレーニングに不可欠です。より多くのボリュームとより正確なラベル付きデータはより正確なモデルに貢献しますが、データのラベル付けは伝統的に時間がかかり、エラーが発生しやすいものでした。 Azure Machine Learningのデータラベリングを使用すると、ラベリングプロジェクトを作成、管理、および監視する中心的な場所になります。あなたは今、データをオフラインを標識の前後を削減するタスクを生成し、管理するために、スタジオのウェブ体験の中からシームレスにプロジェクトを標識するデータを管理することができます。AMLデータラベリングを使用すると、データを読み込んでラベルを付けることができ、数分でトレーニングの準備ができます。 特定のタスクの生産性を高め、コストを削減するために、支援付き機械学習ラベリング機能を使用すると、自動機械学習モデルを活用して、目的のようなクラスタリングと、基礎となるモデルが高い信頼度に達したときにデータを自動的に事前にラベル付けすることにより、ラベル付けを加速できます。この機能は、エンタープライズ版のワークスペースで、画像分類(マルチクラスまたはマルチラベル)およびオブジェクト検出タスクに使用できます。
データのラベル付けをAzure Machine Learningが強力に支援してくれる機能ですね。 今は下記のラベル付けに対応しているようです。
- 画像分類の複数クラス: 単一のラベルのみを画像に適用する場合
- 画像分類の複数ラベル: 複数のラベルを画像に適用する場合
- オブジェクト ID(四角形領域): 画像の中のオブジェクトを検出する場合
さっそく使ってみる
下記のように今回、ラベル付けを行うデータ(猫の画像)は事前にストレージにアップしている状態から始めます。
プロジェクトの追加
まずはプロジェクトの追加を行います。
本エントリでは、猫の画像が何の種類かのラベル付けを行う想定ですので、「画像分類の複数クラス」を選択します。
データセットの選択 or 作成
次に、データセットの用意を行います。さきほど猫の画像をアップしていたデータストアを参照するよう指定します。手順は下記の通りです。
ラベルクラス設定
ラベルクラスの設定です。今回は「Russian Blue」と「Chartreux」という猫の種類をラベル付けする想定ですので、下記はそれぞれを設定をしている状況です。
ML Assist(プレビュー)
プレビューの機能ですが、機械学習による支援を受けられる機能が存在します。こちらも一般提供(GA)が開始されたら別途まとめたいと思います。
ラベル付けの実施
ここまで淡々とした手順でしたが、満を持してラベル付けの作業をしていきましょう。Azure Machine Learning Studioができた背景には共同作業しやすいようにというのもあったと思いますので、ここでは別のユーザも加えてラベル付けのタスクを実施してみましょう。
まずは、共同作業者が猫の画像をラベル付けしているところです。下記のようにこの猫の画像は「Russian Blue」であると、この作業者は判断したようですね。(猫の画像は著作権の問題があるのでマスクしている状態です)
下記は別の作業者(ここでは上司みたいなものと扱います)が上記の作業者のラベル付け結果を確認しているところです。もしラベル付けが間違っていたらここで「拒否」を実施することが可能なんですね。そんなこんなでラベル付けが完了していくといった感じです。
増分更新 (オプション)
ちなみに、データが新しく追加されるような想定がありましたら下記の増分更新を有効にするのが良いでしょう。
ラベル付けデータセットの確認
それではラベル付けが完了したので、確認していきます。まずはエクスポートを行います。
すると、データセットにラベル付けが完了したデータセットができています。
さらにプログラムでの読み込み方が記載されているのでコピーします。
あとはNotebookで実際にプログラムを実行して確認するだけです。見事にラベル付けの情報が取得できていますね!
まとめ
機械学習プロジェクトでは大量のデータにラベル付けを行うことがあり悩みの種となるのが常ですが、そのあたりをAzure Machine Learningが強力に支援、管理してくれるのはかなり負担が減りそうです。また、機械学習による支援まで用意していく流れがありますので今後のアップデートから目が離せない機能ですね。